package alp.starcode.nudtportal.framework.util;

import cn.hutool.core.bean.BeanUtil;

/**
 * 继承自 hutool 的BeanUtil，增加了bean转换时自定义转换器的功能
 */
public class BeanUtils extends BeanUtil {
    /**
     * 将原对象转换成目标对象，对于字段不匹配的字段可以使用转换器处理
     *
     * @param source 原对象
     * @param clazz  目标对象的class
     * @param <R>    原对象类型
     * @param <T>    目标对象类型
     * @return 目标对象
     */
    public static <R, T> T copyBean(R source, Class<T> clazz) {
        if (source == null) {
            return null;
        }
        return toBean(source, clazz);
    }

}